package dp.gr03.payroll.affiliationTransactions;

import dp.gr03.payroll.generalTransactions.ChangeEmployeeTransaction;
import dp.gr03.payroll.payrollDomain.Affiliation;
import dp.gr03.payroll.payrollDomain.Employee;

public abstract class ChangeAffiliationTransaction extends ChangeEmployeeTransaction
{

    public ChangeAffiliationTransaction(int empId)
    {
        super(empId);
    }

    public void change(Employee e)
    {
        recordMembership(e);
        e.setAffiliation(getAffiliation());
    }

    public abstract Affiliation getAffiliation();

    public abstract void recordMembership(Employee e);
}
